Skip to content

fix(ui): show running columns, keep comparison scales across widths, and fit the score table to its card - #43

Merged
nekomeowww merged 1 commit into
mainfrom
neko/fix/compare-followups
Nov 4, 2026
Merged

nekomeowww merged 1 commit into
mainfrom
neko/fix/compare-followups

Conversation

@nekomeowww

Copy link
Copy Markdown
Contributor

Summary

Follow-ups to #42 from reading live comparisons on 0.11.0.

  • Running columns: a column whose newest run is still running is marked in the score table (state icon), the difference chart (spinning ring), and the plane (pulsing ring around the dot, state icon in its card).
  • Same scale on every screen: the difference chart and the plane rounded their domains for the number of ticks the width allowed, so a phone showed ±100 pt where a desktop showed ±50 pt. Domains are now rounded for a fixed tick count; only the tick labels thin out.
  • Heat cells (score table and compact matrix):
    • details open at once, without the arrow that read as a separate shape;
    • on phones a tap opens them in a bottom drawer, the cell stays outlined, and a linked cell moves its link into the drawer;
    • the best cell is outlined in the theme hue at half strength (primary-700/50, dark primary-200/50) instead of black, with one outline color per cell.
  • Score table:
    • fills its card in both directions;
    • scrolls both ways with the header row and names pinned;
    • renders only the rows in view past 40 rows (@tanstack/vue-virtual).
  • Plane: a Whiskers toggle; without whiskers the axes fit the means, so close columns spread out.
  • Cases table: differing rows are marked by their icon only; with several columns nearly every row differs, so the tint on every row pointed at nothing.

Testing

  • pnpm lint, pnpm typecheck, pnpm exec vitest run.
  • New component tests: running ring in the difference chart; score table virtualization and two-way scroll (120 rows × 30 axes) and full rendering of a small table.
  • One run of the full suite failed packages/vieval/src/core/runner/collect.test.ts under load; it passes on its own (10/10), and this PR does not touch packages/vieval.
  • Checked in the browser on real reports at 390, 1600, and 2560 px, light and dark.

🤖 Generated with Claude Code

…and fit the score table to its card

- Running columns are marked in the score table, the difference chart, and the plane (dot ring and card).
- The difference chart and the plane round their domains for a fixed tick count, so a gap reads the same on every
  screen; only the tick labels thin out.
- Heat cells open their details at once without an arrow, open them in a drawer on phones, and outline the best cell
  in the theme hue at half strength.
- The score table fills its card, scrolls both ways with the header and names pinned, and renders only the rows in
  view past 40 rows.
- The plane can hide its whiskers (the axes then fit the means); the cases table marks differing rows by their icon
  only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Nov 4, 2026

Copy link
Copy Markdown

Approval required for deploying to Cloudflare Workers (Preview) for docs.

Name Link
Waiting for approval For maintainers, approve here

@nekomeowww
nekomeowww merged commit dbbae52 into main Nov 4, 2026
5 checks passed
@nekomeowww
nekomeowww deleted the neko/fix/compare-followups branch November 4, 2026 09:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant